package club.xyes.zkh.ecommerce.dao.mapper;

import club.xyes.zkh.ecommerce.commons.entity.Coupon;
import club.xyes.zkh.ecommerce.dao.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * Create by 郭文梁 2019/4/18 0018 13:31
 * CouponMapper
 * 优惠券相关数据库访问对象
 *
 * @author 郭文梁
 * @data 2019/4/18 0018
 */
@Repository
public interface CouponMapper extends BaseMapper<Coupon> {
    /**
     * 获取商铺可发放的优惠券
     *
     * @param shopId 商铺ID
     * @param amount 本次支付金额
     * @return 优惠券
     */
    List<Coupon> selectPermissionGrantsOfShop(@Param("shopId") Integer shopId,
                                              @Param("amount") Integer amount);

    /**
     * 通过商铺ID查询可用的优惠券
     *
     * @param shopId 商铺ID
     * @return Coupon List
     */
    List<Coupon> findAvailableByShopId(@Param("shopId") Integer shopId);

    /**
     * 通过商铺ID查询过期的优惠券
     *
     * @param shopId 商铺ID
     * @return Coupon List
     */
    List<Coupon> findExpiredByShopId(@Param("shopId") Integer shopId);
}
